A conventional database-driven system may include several computing environments, each consisting of one or more applications and a database instance storing data associated with the one or more applications. Such a system may, for example, provide online transaction processing for several different vendors. More specifically, each computing environment may store data specific to a particular vendor and may be responsible for processing online transactions on behalf of the vendor.
A system as described above typically stores a significant amount of identical data across each database instance. This identical data may comprise static data unrelated to any specific vendor, such as payment processing data, shipping data, etc. Duplicative storage of this data is inefficient, particularly if this duplication is not intended for backup or redundancy. Moreover, the entire portion of static data must be recreated each time an additional environment is required (e.g., to support an additional vendor).
Commonly-owned U.S. patent application Ser. No. 11/715,777, entitled “Sharing of Database Objects”, describes a system in which one or more “reader” databases may efficiently import and read shared database objects stored in a common “provider” database. Such a system may reduce a need to duplicate the shared database objects within the reader databases.
It may be desirable to provide write access to a shared database object imported by a reader database. Preferably, the write access is transparent to the applications of the reader database (i.e., the applications need not be aware that the database object was shared by and imported from the provider database), and should not affect the original shared database object of the provider database or other instances of the database object within other reader databases.